home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 8.7 KB | 235 lines | [TEXT/MPS ] |
- /*
- File: CMICCProfile.idl
-
- Contains: Definitions for ColorSync 2.0 profile
-
- Version: Technology: ColorSync 2.0
- Release: Universal Interfaces 3.0d3 on Copland DR1
-
- Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
-
- Bugs?: If you find a problem with this file, send the file and version
- information (from above) and the problem description to:
-
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
- #ifndef __CMICCPROFILE_IDL__
- #define __CMICCPROFILE_IDL__
-
- #include <somobj.idl>
- #include <somcls.idl>
-
- #ifndef __TYPES_IDL__
- #include <Types.idl>
- #endif
-
- #ifdef __SOMIDL__
-
- /* Current CMProfile.header.profileVersion Major: 2, Minor: 0, Stage: Developement (x20), Prerelease:0x01 */
- /* Current Major version number */
- /* magic cookie number for anonymous file ID */
- /* ColorSync profile version 1.0 */
- /************************************************************************/
- /*************** ColorSync 2.0 profile specification ********************/
- /************************************************************************/
- /* profile flags element values */
- /* data type element values */
- /* rendering intent element values */
- /* speed and quality flag options */
- /* device/media attributes element values */
- /* screen encodings */
- /* 2.0 tag type information */
- /* public tags */
- /* custom tags */
- /* technology tag descriptions */
- /* type signatures */
- /* Measurement type encodings */
- /* Measurement Flare */
- /* Measurement Geometry */
- /* Standard Observer */
- /* Standard Illuminant */
- /* Spot Function Value */
- /* Color Space Signatures */
- /* profileClass enumerations */
- /* platform enumerations */
- /* ColorSync 1.0 elements */
- /* General element data types */
- typedef SOMLargeStruct CMDateTime; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMFixedXYZColor; /* Derived from a struct of 12 bytes in size */
-
- typedef unsigned short CMXYZComponent;
-
- typedef SOMLargeStruct CMXYZColor; /* Derived from a struct of 6 bytes in size */
-
- typedef SOMLargeStruct CM2Header; /* Derived from a struct of 128 bytes in size */
-
- typedef SOMLargeStruct CMTagRecord; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMTagElemTable; /* Derived from a struct of 16 bytes in size */
-
- /* External 0x02002001 CMProfile */
- typedef SOMLargeStruct CM2Profile; /* Derived from a struct of 145 bytes in size */
-
- typedef OpaquePtr CM2ProfilePtr; /* Substituted OpaquePtr for “CM2Profile*” */
-
- typedef OpaquePtr CM2ProfileHandle; /* Substituted OpaquePtr for “CM2ProfilePtr*” */
-
- /* Tag Type Definitions */
- typedef SOMLargeStruct CMCurveType; /* Derived from a struct of 14 bytes in size */
-
- typedef SOMLargeStruct CMDataType; /* Derived from a struct of 13 bytes in size */
-
- typedef SOMLargeStruct CMDateTimeType; /* Derived from a struct of 20 bytes in size */
-
- typedef SOMLargeStruct CMLut16Type; /* Derived from a struct of 58 bytes in size */
-
- typedef SOMLargeStruct CMLut8Type; /* Derived from a struct of 562 bytes in size */
-
- typedef SOMLargeStruct CMMeasurementType; /* Derived from a struct of 36 bytes in size */
-
- typedef SOMLargeStruct CMNamedColorType; /* Derived from a struct of 19 bytes in size */
-
- /*
- A variable size array of structs appears as the last block of data
- in the above struct, CMNamedColorType. The data structure
- is as follows: (example in C)
-
- struct {
- unsigned char rootName[1]; * Variable size, max = 32
- unsigned char colorCoords[1]; * Variable size
- } colorName[1]; * Variable size
- */
- typedef SOMLargeStruct CMNamedColor2Type; /* Derived from a struct of 85 bytes in size */
-
- /*
- A variable size array of structs appears as the last block of data
- in the above struct, CMNamedColor2Type. The data structure
- is as follows: (example in C)
-
- struct {
- unsigned char rootName[1]; * 32 byte field. 7 bit ASCII null terminated
- unsigned char PCSColorCoords[1]; * Variable size
- unsigned char DeviceColorCoords[1]; * Variable size
- } colorName2[1]; * Variable size
- */
- typedef SOMLargeStruct CMTextDescriptionType; /* Derived from a struct of 29 bytes in size */
-
- typedef SOMLargeStruct CMTextType; /* Derived from a struct of 9 bytes in size */
-
- typedef SOMLargeStruct CMScreeningType; /* Derived from a struct of 17 bytes in size */
-
- /*
- A variable size array of structs appears as the last block of data
- in the above struct, CMScreeningType. The data structure
- is as follows: (example in C)
-
- struct {
- Fixed frequency;
- Fixed angle;
- unsigned long sportFunction;
- } channelScreening[1]; * Variable size
- */
- typedef SOMLargeStruct CMSignatureType; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMS15Fixed16ArrayType; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMU16Fixed16ArrayType; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMUInt16ArrayType; /* Derived from a struct of 10 bytes in size */
-
- typedef SOMLargeStruct CMUInt32ArrayType; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMUInt64ArrayType; /* Derived from a struct of 12 bytes in size */
-
- typedef SOMLargeStruct CMUInt8ArrayType; /* Derived from a struct of 9 bytes in size */
-
- typedef SOMLargeStruct CMViewingConditionsType; /* Derived from a struct of 36 bytes in size */
-
- typedef SOMLargeStruct CMXYZType; /* Derived from a struct of 20 bytes in size */
-
- /* Profile sequence description type */
- typedef SOMLargeStruct CMProfileSequenceDescType; /* Derived from a struct of 13 bytes in size */
-
- /*
- A variable size array of structs appears as the last block of data
- in the above struct, CMProfileSequenceDescType. The data structure
- is as follows: (example in C)
-
- struct {
- OSType deviceMfg; * Device Manufacturer
- OSType deviceModel; * Decvice Model
- unsigned long attributes[2]; * Device attributes
- OSType technology; * Technology signature
- unsigned long mfgDescASCIICount; * the count of "bytes"
- unsigned char mfgDescASCIIName[2]; * Variable size
- unsigned long mfgDescUniCodeCode;
- unsigned long mfgDescUniCodeCount; * the count of characters, each character has two bytes
- unsigned char mfgDescUniCodeName[2]; * Variable size
- unsigned long mfgDescScriptCodeCode;
- unsigned long mfgDescScriptCodeCount; * the count of "bytes"
- unsigned char mfgDescScriptCodeName[2]; * Variable size
- unsigned long modelDescASCIICount; * the count of "bytes"
- unsigned char modelDescASCIIName[2]; * Variable size
- unsigned long modelDescUniCodeCode;
- unsigned long modelDescUniCodeCount; * the count of characters, each character has two bytes
- unsigned char modelDescUniCodeName[2]; * Variable size
- short modelDescScriptCodeCode;
- unsigned char modelDescScriptCodeCount; * the count of "bytes"
- SInt8 filler; * For proper alignment across languages
- unsigned char modelDescScriptCodeName[2]; * Variable size
- } profileDescription[1];
- */
- /* Under color removal, black generation type */
- typedef SOMLargeStruct CMUcrBgType; /* Derived from a struct of 21 bytes in size */
-
- typedef SOMLargeStruct CMIntentCRDVMSize; /* Derived from a struct of 8 bytes in size */
-
- typedef SOMLargeStruct CMPS2CRDVMSizeType; /* Derived from a struct of 20 bytes in size */
-
- /************************************************************************/
- /*************** ColorSync 1.0 profile specification ********************/
- /************************************************************************/
- /* Device types */
- typedef SOMLargeStruct CMIString; /* Derived from a struct of 66 bytes in size */
-
- /* Profile options */
- /* Profile flags */
- typedef long CMMatchOption;
-
- typedef long CMMatchFlag;
-
- typedef SOMLargeStruct CMHeader; /* Derived from a struct of 64 bytes in size */
-
- typedef SOMLargeStruct CMProfileChromaticities; /* Derived from a struct of 36 bytes in size */
-
- typedef SOMLargeStruct CMProfileResponse; /* Derived from a struct of 20 bytes in size */
-
- typedef SOMLargeStruct CMProfile; /* Derived from a struct of 187 bytes in size */
-
- typedef OpaquePtr CMProfilePtr; /* Substituted OpaquePtr for “CMProfile*” */
-
- typedef OpaquePtr CMProfileHandle; /* Substituted OpaquePtr for “CMProfilePtr*” */
-
- #if OLDROUTINENAMES
- typedef unsigned short XYZComponent;
-
- typedef CMXYZColor XYZColor;
-
- typedef unsigned short CMResponseData;
-
- typedef CMIString IString;
-
- typedef long CMResponseColor;
-
- typedef CMResponseColor responseColor;
-
- #endif
-
- #endif /* __SOMIDL__ */
-
- #endif /* __CMICCPROFILE_IDL__ */
-
-